#pragma once
#include "Comman.h"

class ThreadCache
{
public:
	void* Allocate(size_t size);

	void Deallocate(void* ptr, size_t size);

	void* FetchFromCentralCache(size_t index, size_t alignSize);

	void ListTooLong(FreeList& list, size_t size);

private:
	FreeList _freeLists[NList];

};

static _declspec(thread) ThreadCache* pTLSThreadCache = nullptr;
